package 输入输出流.异常处理的方式trycatch;

/*
 * java中的异常
 * 分类
 *       顶层父类：Throwable
 *        子类Error（错误，不需要我们处理）
 *         子类：Exception（异常，这个才是我们常说异常）
 *  JVM默认的异常处理方式：
 *       在控制台中打印异常信息，并终止程序
 * 处理方式：
 *       方式一：
 *               try{
 *                       //尝试执行的代码（有可能出现的问题的代码）
 *                   }catch（Exception e）{
 *                       //出现问题后解决的方案
 *                   }finally{
 *                       //写在这里的代码正常情况下一定会执行，一般是会来释放资源的
 *                   }
 *          特点：
 *           处理完异常后，程序会继续执行
 *           执行流程：
 *              先执行try{}中的内容，看是否有问题（异常）
 *                 没有：直接执行finally语句中的内容
 *                  有： 跳转到catch(){}语句中开始执行，在执行finally{}语句中的异常
 *       方式二：抛出，交给调用者处理：throws
 *                    * * * * * */
public class text {
    public static void main(String[] args) {
        try {
            int a = 10 / 0;
            System.out.println("a:" + a);
            return;
        } catch (Exception e) {
            System.out.println("被除数不能为零");
            return;
        } finally {//即使try catch中有return finally里边的代码也会执行
            System.out.println("看看我执行了吗");
        }
    }
}
